Zum Hauptinhalt springen

Schritt 1: Den bezahlten Betrag bei der Rechnung eintragen

Der bezahlte Betrag wird in der Eigenschaft "PaidFC" in der ReceiptInvoiceDTO Klasse gespeichert. Dieser ist Brutto und in der Fremdwährung des Belegs gespeichert.

Als Beispiel wird das c-entron Modul "Zahlungseingang" verwendet.

GesamtbetragIst der Rechnungsbetrag in Brutto.
SkontobetragRechnungsbetrag in Brutto - abzüglich des Skonto, wenn einer bei der Zahlungskondition vorhanden ist.
Bereits bezahlter BetragIn c-entron wird der bezahlte Betrag in einer Eigenschaft PaidFC gespeichert. Diese bildet den kompletten "bezahlten" Betrag der Rechnung ab.
Wenn eine Gutschrift erstellt wird, wird der Gutschriftsbetrag ebenfalls in PaidFC eingetragen. PaidFC in Brutto / Fremdwährung
Offener BetragDer Restbetrag der Rechnung in Brutto.
Bezahlter BetragIn der c-entron Eingabemaske der bezahlte Betrag, welcher eingetragen werden soll. Die Funktion "Betrag ausgleichen" trägt in das Feld "Bezahlter Betrag" den "Offenen Betrag" ein.

Web-Service Methodenaufruf um den bezahlten Betrag in die Rechnung einzutragen

var request = new UpdateReceiptIsPaidRequest  
{
ReceiptKind = CentronObjectKindNumeric.InvoiceClass,
ReceiptI3D = 123,
IsPaid = false,
PaidFC = 5000,
ConcurrencyControlGuid = "b9f30717-4dc7-479e-a616-9a4845bf6c0e",
ModuleOrAction = "Zahlungseingang",
};

return this.\_connection.CallWebServiceMethodWithSingleResultAsync(f => f.UpdateReceiptIsPaid(this.\_connection.GetRequest(request)));

ReceiptKindBelegart -> CentronObjectKindNumeric.InvoiceClass
ReceiptI3DI3D des Belegs
IsPaidBoolischer Wert ob die Rechnung bezahlt ist oder nicht. Diese steuert den "Status" Wert der Rechnung.
IsPaid = True setzt den Status der Rechnung auf 2 (Rechnung ist bezahlt).
IsPaid = False setzt den Status der Rechnung auf 1 (Rechnung ist offen).
IsPaid = NULL es wird nichts am Status geändert. Bei Teilzahlungen hier False übergeben, weil die Rechnung weiterhin "offen" bleiben soll. Erst wenn die Rechnung als "abgeschlossen" gilt, dann den Wert auf True setzen.
PaidFCDer gesamte bezahlte Betrag der Rechnung. PaidFC = [PaidFC der Rechnung] + [Bezahlter Betrag]
ConcurrencyControlGuidVon der geladenen Rechnung durch GetReceiptByI3D oder Belegsuche den Wert verwenden. Immer wenn eine neue Version der RE gespeichert wird, wird auch die Guid erneuert. Sicherheitseigenschaft um das Überschreiben von Rechnungsupdates anderer Benutzer zu vermeiden.
ModuleOrActionText wird für einen Logeintrag bei der Rechnung verwendet, wenn sich der "bezahlte Betrag" geändert hat. Das Zahlungseingangsmodul übergibt hier zum Beispiel "Zahlungseingang" als Wert.

Schritt 2: Eintrag beim Zahlungseingang erstellen

Der Eintrag im Zahlungseingang ist optional. Für die c-entron ist nur der Rechnungsstatus und der bezahlte Betrag der Rechnung (PaidFC) relevant.

var dto = new IncomingPaymentDTO  
{
Amount = 5000,
Number = 14501,
CreatedAt = DateTime.Now,
InvoiceAmount = 50000,
PaymentDate = this.PaymentDate,
Comment = this.Comment,
ResidualAmount = 45000,
AccountStatementDate = this.AccountStatementDate,
AccountStatementNumber = this.AccountStatementNumber,
EmployeeI3D = 1,
InvoiceHeadI3D = 123,
IsClosed = this.CloseReceipt,
BankAccount = 'IBAN'
};

await ClassContainer.Instance.WithInstance(async (IPaymentsLogic logic) => await logic.SaveIncomingPayment(dto)).ThrowIfError();

AmountDer [bezahlte Betrag]. Der Wert welcher in der Zahlungseingangsmaske im Feld [Bezahlter Betrag] eingetragen wird.
NumberNummer der Rechnung.
CreatedAtZeitstempel wann der Datensatz erstellt wurde.
InvoiceAmountBeinhaltet den Bruttobetrag der Rechnung.
PaymentDateDatum wann die Zahlung erfolgt ist.
CommentKommentar zur Buchung.
ResidualAmountRestbetrag der Rechnung. Bruttobetrag - bezahlter Betrag
AccountStatementDateDatum des Kontoauszugs.
AccountStatementNumberNummer des Kontoauszugs.
EmployeeI3DID des Mitarbeiters, welcher den Datensatz erfasst hat.
InvoiceHeadI3DID der Rechnung.
IsClosedGibt an ob die Rechnung mit dieser Zahlungseingangsbuchung geschlossen wurde oder nicht.
BankAccountIBAN des Kontoauszugs.